“注释: 爱恨交织的双重标准?解析注释在代码开发中的作用。”

文章目录

  • 每日一句正能量
  • 前言
  • 观点和故事
  • 程序员不写注释的原因是什么
  • 如何才能写出漂亮的注释
  • 后记

在这里插入图片描述

每日一句正能量

水与水之间有距离,但地心下直相牵,人与人之间有距离,但心里时刻挂念,发条短信道声晚安,梦里我们相见。

前言

代码注释是程序员在开发过程中经常会遇到的问题之一。有些程序员认为注释非常必要,因为它们可以解释代码中的意图和功能。但是也有一些程序员不喜欢写注释,因为他们认为代码应该是自描述的,不应该需要注释来阐明自己的意图。不管是哪种立场,都有它的道理。在这篇文章中,我将探讨程序员对注释的看法,并分享我对于不写注释的程序员的看法。

观点和故事

关于写注释这个事吧,身边的人确实有说好的,也有说不好的。对于初学者来说,我个人还是觉得写注释和有注释会友好一点。再一个,随着时间的推移,有些代码可能自己本人都会忘记,这个是很正常的现象,这个时候就体现出了注释的重要性了。这个在公司的项目本人也确实是经历过这样的事情。对于不想写注释的人来说,理由是写了之后看着会很乱,也有说代码写好了就是最好的注释,对于这两种来说,就需要个人能力的提高了。

还有一个,有些公司是有注释模板以及开发模板的。我自己也写了一篇注释模板,没看过的可以先看一下:

  • Java、Android 新建类自动添加头部注释以及如何添加函数注释模板和快捷键

然而,我认为程序员不写注释的行为是需要引起重视的,因为注释是基于文档的编程的一部份,可以帮助团队中其他成员更好地了解代码的运行逻辑和设计意图,也方便后续的维护和升级。

在我的观察中,一些程序员可能会觉得写注释会浪费时间和精力,尤其是当他们写的代码比较短小简洁时,认为代码本身就足够清晰易懂,没有必要再添加注释。其实,这个观点并不准确。编写注释并不一定需要太多的时间和精力,只要能够简洁明了地表达代码的意图即可。同时,在团队合作的过程中,写注释能够帮助其他成员更好地理解代码,减少沟通成本和时间。

我也听说过一些程序员写的代码很难理解,即使是经验较丰富的程序员也很难从中得到需要的信息。这时候,注释能够帮助其他成员更好地理解代码并提高团队效率。在我的经验中,注释可以包括以下信息:

  1. 代码的功能和作用
  2. 变量的含义和用途
  3. 方法的参数和返回值
  4. 非常规或复杂的算法实现细节
  5. 这段代码的背景,为什么这段代码需要存在
  6. 代码的相关限制和注意事项

总的来说,我认为程序员应该养成写注释的好习惯。在进行团队协作开发时,写注释能够帮助代码更好地理解和维护。同时,注释也能够激励程序员更好地组织代码,使代码更易读和易维护。

程序员不写注释的原因是什么

在我的看来,程序员不写注释的原因主要是以下几点:

  1. 缺乏意识:有些程序员可能没有意识到注释的重要性,或者没有养成良好的注释习惯。
  2. 时间紧迫:在开发周期紧张的情况下,程序员可能会觉得写注释会浪费时间和精力,因此忽略了对代码的注释。
  3. 个人编程习惯:有些程序员喜欢自己一个人写代码,习惯于从自己的代码中去理解和解决问题,不太注重写注释。
  4. 技术水平:一些程序员可能在技术水平比较低的情况下写代码,不了解写注释的重要性和方法,或者不知道如何写好的注释。
  5. 态度问题:有些程序员可能对写注释抱有消极态度,认为写注释是“烦琐的工作”,并不能直接带来效益,或者认为代码质量足够好,不需要注释。

根据我的经验,如果程序员不写注释,将会导致代码难以理解,团队协作效率降低,并且在维护和更新代码时容易出现问题。因此,我认为程序员应该尽可能地写好注释,并且将其视为代码本身的一部分。同时,团队管理人员也应该引导和鼓励程序员写注释,为项目的顺利进行提供保障。

如何才能写出漂亮的注释

我认为程序员应该养成良好的注释习惯,因为注释对代码的可读性和可维护性都有很大的帮助,特别是在代码需要交接或者长期维护的情况下。如果是时间压力导致不写注释,可以尝试在编写代码的同时逐步添加注释,这样也不会耽误太多时间。

关于写出漂亮的注释,我认为以下几点是很重要的:

  1. 语言要简洁明了:注释应该用简单明了的语言来表达,而不是使用过于专业的术语和缩写,这样可以让更多人理解。

  2. 注释要准确:注释应该准确地描述代码的功能和意图,并避免与代码产生歧义。

  3. 注释要规范:遵循约定俗成的注释规范,例如注释前需要加上符号“//”或“/**/”,注释应排版整齐等。

  4. 注释要有层次感:代码注释应该有分层次的结构,便于读者阅读和理解,例如可以用标题、段落、列表等形式来组织注释。

总之,写出漂亮的注释需要良好的语言表达能力和规范意识,同时要注重注释的准确性和整体结构。

后记

注释可以让代码更易于理解和维护。当你写代码时,可能很清楚自己的思路,但过了一段时间后,很容易就忘记了当初为什么要写这段代码。这时候,代码注释就非常有用了,能够帮助你记住当时的思考过程和意图,也能够让其他人更加容易读懂你的代码。

另一方面,程序员不写注释可能也有一些原因。有时候,程序员可能觉得代码足够清晰,不需要注释;有时候,程序员可能觉得写注释浪费时间,不如继续写代码;还有些情况下,程序员可能是懒惰或者不重视注释这项工作。

总之,代码注释是非常重要的一项工作,能够提高代码的可读性和可维护性。但是,如何权衡注释与代码编写的效率,需要具体情况具体分析。

转载自:https://blog.csdn.net/u014727709/article/details/133749808
欢迎start,欢迎评论,欢迎指正

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

06-进程间通信

学习目标 熟练使用pipe进行父子进程间通信熟练使用pipe进行兄弟进程间通信熟练使用fifo进行无血缘关系的进程间通信使用mmap进行有血缘关系的进程间通信使用mmap进行无血缘关系的进程间通信 2 进程间通信相关概念 2.1 什么是进程间通信 Linux环境下,进程地址空间…

vscode package.json文件开头的{总是提升警告

警告如下 Problems loading reference https://json.schemastore.org/stylelintrc.json: Unable to load schema from https://json.schemastore.org/stylelintrc.json: read ECONNRESET. 解决如下 在设置(settings.json)里 新增一条属性 "ht…

Mock工具之Moco使用

一、什么是Mock mock英文单词有愚弄、嘲笑、模拟的意思,这里主要是模拟的意思 二、什么是Moco 开源的、基于java开发的一个mock框架支持http、https、socket等协议 三、Mock的特点 只需要简单的配置request、response等即可满足要求 支持在request 中设置headers、…

【附代码】使用Shapely计算多边形外扩与收缩

文章目录 相关文献效果图代码 作者:小猪快跑 基础数学&计算数学,从事优化领域5年,主要研究方向:MIP求解器、整数规划、随机规划、智能优化算法 本文档介绍如何使用 Shapely Python 包 计算多边形外扩与收缩。 如有错误&…

sface人脸相似度检测

sface人脸相似度检测,基于OPENCV,人脸检测采用yunet,人脸识别采用sface,支持PYTHON/C开发,图片来自网络,侵权请联系本人立即删除 yunet人脸检测sface人脸识别,检测两张图片的人脸相似度

Redis-01基本数据结构

1、String 1.1、介绍 String 是最基本的 key-value 结构,key 是唯一标识,value 是具体的值,value其实不仅是字符串, 也可以是数字(整数或浮点数),value 最多可以容纳的数据长度是 512M 1.2、…

基于springboot实现在线动漫信息交流分享平台项目【项目源码+论文说明】计算机毕业设计

基于springboot实现在线动漫信息交流分享平台演示 摘要 随着社会互联网技术的快速发展,每个行业都在努力与现代先进技术接轨,通过科技手段提高自身的优势;对于在线动漫信息平台当然也不能排除在外,随着网络技术的不断成熟&#x…

基于拉丁超立方法的风光场景生成与削减

代码链接:基于拉丁超立方法的风光场景生成与削减 摘要:与蒙特卡洛法不同,拉丁超立方采样改进了采样策略能够做到较小采样规模中获得较高的采样精度,属于分层抽样技术,设定风光出力遵从正态分布normrnd,从而…

【LeetCode】——链式二叉树经典OJ题详解

主页点击直达:个人主页 我的小仓库:代码仓库 C语言偷着笑:C语言专栏 数据结构挨打小记:初阶数据结构专栏 Linux被操作记:Linux专栏 LeetCode刷题掉发记:LeetCode刷题 算法头疼记:算法专栏…

关于 打开虚拟机出现“...由VMware产品创建,但该产品与此版VMwareWorkstateion不兼容,因此无法使用” 的解决方法

文为原创文章,转载请注明原文出处 本文章博客地址:https://hpzwl.blog.csdn.net/article/details/133678951 红胖子(红模仿)的博文大全:开发技术集合(包含Qt实用技术、树莓派、三维、OpenCV、OpenGL、ffmpeg、OSG、单片机、软硬结…

网工内推 | base郑州,上市公司,最高15薪,五险一金全额缴

01 四方达 招聘岗位:网络工程师 职责描述: 1、负责公司数据中心(机房)的管理与运维工作。 2、负责公司服务器、路由器、防火墙、交换机等设备的管理、以及网络平台的运行监控和维护; 3、负责公司服务器运维管理工作、…

17基于matlab卡尔曼滤波的行人跟踪算法,并给出算法估计误差结果,判断算法的跟踪精确性,程序已调通,可直接运行,基于MATLAB平台,可直接拍下。

17基于matlab卡尔曼滤波的行人跟踪算法,并给出算法估计误差结果,判断算法的跟踪精确性,程序已调通,可直接运行,基于MATLAB平台,可直接拍下。 17matlab卡尔曼滤波行人跟踪 (xiaohongshu.com)

androidStudio第一次运行报错无法运行

安卓第一次运行失败 大家好,我使用androidStudio新建了一个测试demo第一次运行,结果失败了,显示如下图: 然后查了各种方法,都是没有用,最后 历经困难,还是找到了,原来是 gradle的依…

CV计算机视觉每日开源代码Paper with code速览-2023.10.9

精华置顶墙裂推荐!小白如何1个月系统学习CV核心知识:链接 点击CV51,关注更多CV干货 论文已打包,点击进入—>下载界面 点击加入—>CV计算机视觉交流群 1.【基础网络架构】Entropic Score metric: Decoupling Topology and…

2023.10.8 基本 Thread 线程详解

目录 Thread 常见构造方法 Thread 常见属性 创建一个 Thread 线程 使用 jconsole 命令观察线程 中断一个 Thread 线程 等待一个 Thread 线程 休眠当前 Thread 线程 让出当前 Thread 线程的 CPU 资源 线程的状态 Thread 常见构造方法 方法说明Thread()创建线程对…

天然泉水除砷技术解析,除砷树脂

天然地下水和地表水都可能含有砷,地下水含砷量高于地表水。而地下水砷超标的原因一种是由于自然原因造成的,主要是含砷矿物风化溶解造成的地下水污染。由于含砷矿物分布广泛,这种污染在世界各地都有发生,尤其在南亚、南美等地区&a…

java基础 日期工具类

目录结构: DateUtils.java package dateStudy; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date;public class DateUtils {private static final String FORMAT_1"yyyy-MM-dd HH:mm:ss";//私有方法&#xf…

如何正确方便的理解双指针?力扣102 (二叉树的层序遍历)

双指针,顾名思义就是指针的指针。 在此之前我们需要先理解单指针 (简称为指针)。指针很简单,直接上例子:例:现有两个变量,a10,b20. 要求:交换他们的值,输出的结果应为a20…

Flink之Watermark源码解析

1. WaterMark源码分析 在Flink官网中介绍watermark和数据是异步处理的,通过分析源码得知这个说法不够准确或者说不够详细,这个异步处理要分为两种情况: watermark源头watermark下游 这两种情况的处理方式并不相同,在watermark的源头确实是异步处理的,但是在下游只是做的判断,这…

LLaVa大模型关键技术及在线演示

LLaVA,一种新的大型多模态模型,称为“大型语言和视觉助手”,旨在开发一种通用视觉助手,可以遵循语言和图像指令来完成各种现实世界的任务。 这个想法是将 GPT-4 等大型语言模型 (LLM) 的强大功能与 CLIP 等视觉编码器相结合&#…