实验四-代码审查

news/2024/9/30 13:31:52

一、实验题目 :代码审查

二、实验目的

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、制定代码走查表,提交代码格式审查表文件。

五、代码自动化格式审查结果截图

六、根据审查结果修改代码格式前后对比图(可以截取部分)

七、实验中遇到的问题及解决方法

代码逻辑不正确:
在实现 bubble_sort 函数时,我发现代码逻辑存在错误。特别是在比较和交换数组元素的部分,我错误地使用了错误的条件判断或错误的循环结构,导致排序过程无法正确进行。为了解决这个问题,我需要重新审查并修正代码中的逻辑错误,确保比较和交换操作能够按照正确的冒泡排序算法执行。
代码规范不遵循:
在编写代码时,我意识到我没有严格遵循Python的代码规范(PEP 8)。这包括使用不一致的缩进、不合适的变量命名、缺少空格和注释等问题。为了改善这一点,我将重新检查我的代码,并确保它遵循PEP 8规范。我将使用四个空格作为缩进,使用有意义的变量名,并在适当的地方添加注释和文档字符串。这将提高代码的可读性和可维护性。
代码的可读性不高:
我的代码在可读性方面还有待提高。为了增强代码的可读性,我将采取以下措施:
添加注释来解释函数的目的、参数、返回值和关键逻辑步骤。这将帮助其他开发人员更好地理解代码的工作原理和用法。
使用更具描述性的变量名,以代替简短的、不明确的名称。这将使代码更易于理解。

通过解决这些问题并遵循代码规范和最佳实践,我将能够编写出更加清晰、可维护和易于理解的代码。

gitee地址:https://gitee.com/li-mu9/soft-engineering-experiment/blob/master/Bubble_sort_flake8.py

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.ryyt.cn/news/29806.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!

相关文章

json在线解析及格式化工具

JSON 可以将程序语言对象中表示的一组数据转换为字符串,然后就可以在网络或者程序之间轻松地传递这个字符串,并在需要的时候将它还原为各编程语言所支持的数据格式,例如在 PHP 中,可以将 JSON还原为数组或者一个基本对象。在用到AJAX时,如果需要用到数组传值,这时就需要用…

Docker 桥接模式下端口映射会绕过防火墙

问题描述 使用Docker桥接模式启动了一个MySQL容器 查看防火墙发现并未开启3306端口,但该宿主机3306端口仍能被第三方机器访问telnet 152.51.32.11 3306 问题本质 Docker 在进行端口映射时,已经自动使用iptables命令修改了防火墙规则;并且这个规则不会被ufw显示、管理;甚至…

ElementUI——elementui重复引入样式

前言 按着文档操作后发现存在样式重复引入的问题,尝试了一系列的配置都未生效,最终是直接生成样式导入解决; 文档:https://element.eleme.io/#/zh-CN/component/custom-theme#yin-ru-zi-ding-yi-zhu-ti 工具:https://elementui.github.io/theme-chalk-preview/#/zh-CN 内容…

通过Dockerfile创建海量数据库VastbaseG100的docker镜像

1.Dockerfile文件内容 FROM centos:centos8LABEL maintainer="xh"COPY Vastbase-G100-installer-2.2_Build15\(17408\)-kylin_v10sp2-x86_64-no_mot-20231221.tar.gz /opt COPY db_install.rsp /opt COPY docker-entrypoint.sh /optRUN set -x \&& cd /etc/y…

水泽信息收集docker安装

具体参考水泽 Docker安装 点击跳转镜像源 1. vim /etc/docker/daemon.json //对镜像源进行配置 2. 对包进行更新 如果没有进行sudo su的话 就得sudo apt update3. 安装docker apt install docker.io #常见命令 sudo systemctl start docker sudo systemctl enable docker…

分享一个好用的网页分析工具

分析一个很好用的分析工具,网页信息检测查询,可以快速检测网页的META标签,分析标题、关键词、描述等是否符合搜索引擎。 工具地址:http://tools.linuxsou.com/chameta/ 比如我检测博客园,看下图: 千行代码,Bug何处藏。 纵使上线又怎样,朝令改,夕断肠。

SD 总线协议

官方资料参考: https://www.sdcard.org/downloads/pls/

FFMpeg

FFMpeg的官网下载转码程序 点击Dowload 选择对应系统的下载源本次为Windows系统 选择Full标记的压缩包 解压压缩包,文件目录结构如下配置系统环境变量值Path,增减变量值 运行cmd查看安装结果 ffmpeg -version3我讹误