一、实验题目 :代码审查
二、实验目的
1、熟悉编码风格,利用开发环境所提供的平台工具对代码进行自动格式审查;
2、根据代码规范制定代码走查表,并按所制定的审查规范互审代码。
三、实验内容
1、IDEA环境和PyCharm环境二选一;
IDEA环境
(1)预先准备在IDEA环境下实现对输入的n个整数进行排序的代码;
(2)利用Alibaba代码规约插件,对所编写代码进行自动化格式审查。
https://blog.csdn.net/larner/article/details/120894045
PyCharm环境
(1)预先准备在PyCharm环境下实现对输入的n个整数进行排序的代码;
(2)利用Code Inspections对代码进行自动格式审查。
步骤如下:
在Python中,可以使用pylint或flake8等工具来进行代码审查。
以下是一个使用flake8的例子:
首先,安装flake8:
pip install flake8
然后,在命令行中运行flake8对代码进行审查:
flake8 your_script.py
这将输出代码中潜在的问题,包括不符合PEP 8标准的代码风格和潜在的错误。
如果你使用的是IDE,比如PyCharm,可以直接在IDE中运行代码审查:
打开你的Python文件,右键点击文件名,选择"Code" -> "Run Inspection by Name..."".
输入flake8,然后按下回车键,或者选择flake8的图标。
根据需要调整flake8的规则或者添加插件来满足特定项目的代码审查需求。
这样,IDE会在下方的"Run"窗口中显示代码审查的结果。
2、2人一组根据代码规范制定代码走查表;
3、按所制定的代码走查表,小组内互相审查所编写的代码,并将审查结果填写到代码审查表中。
四、实验要求
1、预先准备的代码要求独立编写,严禁抄袭,具体排序算法可以自由选择一种;
2、利用自动化格式审查工具对代码进行格式审查,截取格式审查结果,并针对审查结果逐一进行修改;
3、制定代码走查表,提交代码格式审查表文件。
五、代码自动化格式审查结果截图
六、根据审查结果修改代码格式前后对比图(可以截取部分)
error:C:\pycharm\1.1.py:17:24: E703 statement ends with a semicolon
error:C:\pycharm\1.1.py:8:13: E303 too many blank lines (2)
error:C:\pycharm\1.1.py:6:36: E999 SyntaxError: invalid syntax
七、实验中遇到的问题及解决方法
问题1: 在使用IDEA或PyCharm进行代码审查时,可能会出现无法通过审查的问题,比如未按照PEP 8标准编写的代码,或者潜在的错误。
解决方法: 可以根据审查结果逐一修改代码,使其符合规范。此外,可以参考审查工具提供的建议或错误信息,进行相应的修改和优化
问题2: 在小组内互相审查代码时,可能会出现意见不一致或者对代码质量评判标准不一致的情况。
解决方法: 可以在小组内进行讨论,就代码质量评判标准达成共识。可以通过分享经验、理性讨论等方式,最终达成一致意见。此外,也可以邀请老师或者助教参与,给予专业意见和建议。
问题3:在进行审查代码过程中无法通过自动化审查工具的审查。
解决方法:首先查看审查工具的报错信息,根据报错信息逐一修改代码。可能是因为未按照规范命名变量、缩进不正确、注释不全等问题导致的。可以根据审查工具提供的建议或错误信息逐一解决问题。
问题4:代码可读性差,命名不规范,注释不清晰;代码重复冗余,缺乏模块化和抽象
解决方法:遵循良好的命名规范,使用有意义的变量名和函数名,增加代码的可读性,添加清晰的注释,解释代码的目的、思路和关键步骤,以便能够轻松理解和维护代码。抽取公共部分为函数或类,实现代码的模块化和复用。避免重复的代码段,提高代码的可维护性和扩展性。同时,考虑使用设计模式等技术来优化代码结构,减少冗余和耦合。