代码规范性

代码规范性

    • 命名规范
    • 代码格式
    • 注释
    • 代码结构
    • 异常处理
    • 代码复用
    • 代码审查
    • 空格的用法
    • 代码示例

命名规范

​ 1、变量和函数名:使用驼峰命名法(camelCase),如userName、getUserInfo。

​ 2、常量:使用全大写字母,并用下划线分隔,如MAX_SIZE、DEFAULT_VALUE。

​ 3、类名:使用帕斯卡命名法(PascalCase),如UserInfo、CarService。

​ 4、文件名:与类名保持一致,或使用小写字母与下划线分隔,如user_info.py、car_service.js。


代码格式

​ 1、缩进:统一使用4个空格或一个制表符(tab)进行缩进。

​ 2、间隔:在运算符前后、逗号后、函数调用参数之间、函数名和括号之间、

​ 关键字(如 if ,for,while )和随后的括号之间添加空格,提高可读性。

​ 同时避免不必要的空格,如不要在括号内部或逗号前后添加不必要的空格。

​ 3、括号:即使可以省略括号,也应该保留,以增强代码清晰度。

​ 4、对齐:确保代码对齐,使代码结构一目了然。

​ 5、变量 == null,空统一放右边。


注释

​ 1、文件头部:提供文件描述、作者、创建日期等信息。

​ 2、函数和类:描述其用途、参数、返回值等。

​ 3、复杂代码段:在代码上方提供简短说明。

​ 4、避免过多注释:代码应尽可能自我解释。


代码结构

​ 1、模块化:将代码组织成模块,每个模块负责一个具体功能。

​ 2、单一职责原则:每个类和函数应该只有一个改变的理由。

​ 3、避免过长的函数和类:保持函数和类的简短,易于理解和维护。

​ 4、空行:使用空行来分割不同的代码块,使得代码结构更加清晰。

​ 5、避免字符串多次拼接,可用String.format(“%s%s”, s1, s2)或者StringBuffer
的append()方法。


异常处理

​ 1、捕获具体异常:避免捕获所有异常,只捕获你预期会发生的异常。

​ 2、错误处理:不要只是打印错误信息,应该有逻辑处理错误情况。

​ 3、资源管理:确保释放所有使用的资源,如文件、数据库连接等。

​ 4、类型转换:通过instanceof判断,再做类型转换,避免类型转换异常。

​ 5、常量判断:常量放前面,如 常量.equal(变量),避免空异常。


代码复用

​ 1、函数和类:如果代码段在多个地方使用,考虑将其抽象成函数或类。

​ 2、库和框架:使用现有的库和框架来避免重复造轮子。


代码审查

​ 1、代码审查:定期进行代码审查,由同事检查代码规范性。

​ 2、自动化工具:使用代码审查工具来检查代码质量和风格。


空格的用法

image-20240716112956998

image-20240716113020916

代码示例

image-20240710203950116

image-20240710204008279

image-20240710204024464

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

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

相关文章

CompletableFuture异步编排

1.创建异步对象 CompletableFuture提供了四个静态方法来创建一个异步操作 public static ExecutorService executor Executors.newFixedThreadPool(10);public static void main(String[] args) throws ExecutionException, InterruptedException {System.out.println("…

mwwz库支持可视化每个特征点的匹配质量

支持获取每个特征点的匹配分数,同时支持擦除特征点。

数据库第6次作业

内容 1、创建视图v_emp_dept_id_1,查询销售部门的员工姓名和家庭住址 2、创建视图v_emp_dept,查询销售部门员工姓名和家庭住址及部门名称。 3、创建视图v_dept_emp_count(dept_name,emp_count,avg_salay),统计每个部门人数并计算平均工资。 …

【Datawhale AI夏令营】电力需求预测挑战赛 Task02

task02 Task2 版本教程将使用机器学习模型解决本次问题,模型使用简单,数据不需要过多预处理; 使用机器学习方法一般主要需要从 获取数据&增强、特征提取和模型 三个方面下手。 使用机器学习方法有哪几个步骤? 一般的使用机器…

摄像头 RN6752v1 视频采集卡

摄像头 AHD倒车摄像头比较好,AHD英文全名Analog High Definition,即模拟高清,拥有比较好的分辨率与画面质感。 RN6752v1 GQW AKKY2 usb 采集卡 FHD(1080p)、HD(720p)和D1(480i&am…

局域网内放开端口

欢迎使用Markdown编辑器 点击完成后,其他内网机器就可以访问了。

ICT产业是什么?具体是干什么

前言: ICT产业,即信息与通信技术产业(Information and Communication Technology),是一个涵盖了广泛技术和服务的综合产业。它主要包括计算机硬件、软件、网络和电信设备等领域。 ICT是由信息通信和技术的英文单词首…

Linux 内核模块加载知多少

文章目录 目录 1. 内核模块 内核模块的作用 2. 内核模块的加载 2.1 内核模块的加载过程 2.2 内核模块加载方式 使用 insmod 加载模块 使用 modprobe 加载模块 2.3 内核模块加载顺序 3. 常用的相关命令 4. 总结 工作还在继续,学习还在继续,学习…

RK3568笔记三十七:按键驱动实验(设备树)

若该文为原创文章,转载请注明原文出处。 一、编程思路 程序编写的主要内容为添加 key 的设备树节点、在驱动程序中使用 of 函数获取设备节点中的属性,编写测试应用程序。 • 首先向设备树添加 key 设备节点。 • 其次编写平台设备驱动框架,…

autohotkey+vscode 替代 linux下vim方案(记忆零成本)

autohotkeyvscode 替代 linux下vim方案(记忆零成本) 先看效果和移动方案 效果 命令行下 1.新建文件 code hello.c2.然后弹出 vs code 现在就是相当于在无限制记事本里面了 方案 下面展示快捷键方案 摸着键盘上的小凸起, 上下左右,直接起飞 i:上 , k:下,j:左,L:右 H:行…

AI绘画Stable Diffusion 零基础入门 —AI 绘画原理与工具介绍,万字解析AI绘画的使用教程

大家好,我是设计师阿威 想要入门 AI 绘画,首先需要了解它的原理是什么样的。 其实很早就已经有人基于深度学习模型展开了对图像生成的研究了,但在那时,生成的图像分辨率和内容都非常抽象。 直到近两年,AI 产出的图像…

AI+折叠屏,荣耀的创新周期论

文|刘俊宏 编|王一粟 2024年,AI和折叠屏的演进路线,已经成为了手机行业的共识。 首先,手机市场的新增量已经被折叠屏所接管。据Counterpoint Research数据显示,中国2024年第一季度折叠屏手机销量同比增长…

3、计算机网络通信及其编程:深入Linux内核理解epoll

Linux网络 IO模型 同步和异步,阻塞和非阻塞 同步和异步 同步和异步关注的是调用方是否主动获取结果。 同步:同步的意思就是调用方需要主动等待结果的返回。异步:异步的意思就是不需要主动等待结果的返回,而是通过其他手段比如…

为什么用ssh连接服务器会出现错误?

当我们尝试通过 SSH 连接到服务器时可能会发生许多情况,比如出现“连接被拒绝”的错误。虽然导致 SSH 连接错误的原因可能有多种,但以下是其中常见的几种: 1.您的 SSH 服务已关闭。 2.您的凭证有误。 3.您尝试使用的端口已关闭。 4.您的服务器…

SQL 中的 EXISTS 子句:探究其用途与应用

目录 EXISTS 子句简介语法 EXISTS 与 NOT EXISTSEXISTS 子句的工作原理实际应用场景场景一:筛选存在关联数据的记录场景二:优化查询性能 EXISTS 与其他 SQL 结构的比较EXISTS vs. JOINEXISTS vs. IN 多重 EXISTS 条件在 UPDATE 语句中使用 EXISTS常见问题…

部署kafkamanager

1,检查kafka的版本 到lib下查看 libs/kafka-clients-0.11.0.3.jar kafka的版本 0.11 2,下载kafkamanager 链接: https://pan.baidu.com/s/1qYifoa4 密码:el4o 3,解压后更改该conf下conf/application.conf 中zkhosts …

六、Accelerate + Deepspeed

帮up宣传一下,优质up值得信赖! B站UP:你可是处女座啊 文章目录 理论知识DP&DDPDeepspeed介绍注意事项多机多卡 实战ddp_accelerate.py原先显存DDP 运行Deepspeed 运行方式一-zero2方式二 -zero2方式一 -zero3方式二 -zero3 ddp_trainer…

在 Windows 上运行 Linux:WSL2 完整指南(一)

系列文章目录 在 Windows 上运行 Linux:WSL2 完整指南(一)🚪 在 Windows 上运行 Linux:WSL2 完整指南(二) 文章目录 系列文章目录前言一、什么是 WSL?1.1 WSL 的主要特性1.2 WSL 的…

[WUSTCTF2020]level4题解 入土为安的第三天

二叉树 Practice my Data Structure code..... Typing....Struct.....char....*left....*right............emmmmm...OK! Traversal! Traversal type 1:2f0t02T{hcsiI_SwA__r7Ee} Traversal type 2:20f0Th{2tsIS_icArE}e7__w Traversal type 3: //type3(&x[22]); No w…

Schematics,一个牛逼的python库用于数据验证和转换的库

目录 什么是Schematics? 为什么使用Schematics? 安装Schematics 定义模式 验证数据 自定义验证 转换数据 结语 什么是Schematics? 在Python的世界中,Schematics是一个用于数据验证和转换的库。它通过定义数据结构的模式(…