在编程中使用中文到底该不该??

看到知乎上有个热门问题,为什么很多人反对中文在编程中的使用?

这个问题有几百万的浏览热度,其中排名第一的回答非常简洁,我深以为然:

在国内做开发,用中文写注释、写文档,是非常好的习惯,因为太缺优秀的中文文档了,目之所及很多框架都没有完整的中文文档。

除此之外,其他形式用中文硬替代英文的编程行为,都有点化简为繁、舍易求难的味道。

包括但不限于,用中文变量名、用中文解释关键字、用中文字段名、用中文文件名和路径等等。

为什么呢?编程中使用中文会造成一些不必要的困扰和错误。

首先,编程语言本身是英文的,很多关键词用英文表达更准确,已经是约定俗称的东西

比如Python中的return,凡是学过编程的见名知义,return将函数中的结果返回给调用者。

如果要把return翻译成中文:返回、返回值、送回、给出…总觉得言不及义

而且不同人有不同的中文翻译方式,会增加沟通和理解的成本。

其次,在编程中使用中文可能会导致错误,比如编码错误、不兼容等

有些人习惯用中文写文件名和路径,当你在代码中读取文件的时候,很有可能出现编码错误。

还有在数据库中使用中文字段,这也会导致编码错误和不兼容的问题,其次对于数据库的维护也是极不方便的。

虽然现在很多语言和数据库都支持Unicode字符集,允许中文做变量、字段,但是为了避免不必要的错误,实在不建议用。

最后,编程不光给自己看,还要方便其他开发者阅读,除了文档和注释外,最好不要用添加中文,方便团队里人阅读和维护

总得来说,还是要老老实实遵循编程规范,只做对的事。

谷歌有个编程规范文档,对C++、Python、Javascript等各种编程语言都做了详细说明,大家没事可以看看

以Python为例,有语言规范和风格规范,语言规范包括各种函数、模块、方法的规范

风格规范包括对注释、缩进、行宽等进行了规范

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

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

相关文章

Lua环境下载与配置

这里介绍如何下载已经编译好的Lua环境,如何配置Lua环境。 如希望自己从源码编译Lua环境,请自行搜索资料。 第一步:下载编译好的lua环境 打开下面链接,然后根据指引下载。 The Programming Language Luahttps://www.lua.org/hom…

linux进程退出之exit与_exit

linux进程退出之exit与_exit _exitexit流程清理函数atexit()函数:on_exit()函数: _exit /* Terminate program execution with the low-order 8 bits of STATUS. */ /** status参数定义了进程的终止状态,父进程可以通过wait(&am…

前端学习<四>JavaScript基础——01-编程语言和JavaScript简介

计算机语言 概念 计算机语言:人与计算机之间通信的语言。它是人与计算机之间传递信息的媒介,它通过特定的语法规则和语义约定,将人类可理解的指令转化为计算机可以执行的机器指令。 计算机程序:就是计算机所执行的一系列的指令…

【2024系统架构设计】案例分析- 5 Web应用

目录 一 基础知识 二 真题 一 基础知识 1 Web应用技术分类 大型网站系统架构的演化:高性能、高可用、可维护、应变、安全。 从架构来看:MVC,MVP,MVVM,REST,Webservice,微服务。

Pytorch for training1——read data/image

blog torch.utils.data.Dataset create dataset with class torch.utils.data.Dataset automaticly import torch from torch.utils.data import Datasetclass MyDataset(Dataset):def __init__(self, data):self.data datadef __getitem__(self, index):# 根据索引获取样本…

排序算法-归并排序

Leetcode链接:. - 力扣(LeetCode) 归并:将原始数组划分为若干个子数组,然后将这些子数组分别排序,最后再将已排序的子数组合并成一个有序的数组。是一种分治思想 思路: 1.分 2.治 3.怎么治 …

Codeforces TypeDB Forces 2023 C. Remove the Bracket【上下界DP】

C. Remove the Bracket 题意 给定一个长度为 n n n 的整数数组 a a a 和一个非负整数 s s s 要求 ∀ i ∈ [ 2 , n − 1 ] , 选定两个整数 x i , y i ,满足 x i y i s 且 ( x i − s ) ( y i − s ) ≥ 0 \forall i \in [2,n - 1],选定两个整数 x_i, y_i&am…

恶意勒索Word文档模版注入分析

文章目录 前言1、工具:2、IOC样本:3、样本提取4、恶意文档分析参考手册 恶意的文档执行流程一、使用 OLEDUMP 和 OLEVBA 分析Word 文档1、OlEDUMP2、OLEVBA 二、使用 Detect-It Easy 识别文件类型-简单三、使用 7-zip 探索 OOXML 文档并查找模板注入四、…

程序员为什么要一直写 bug ?

程序员并不是故意写bug的,bug的产生通常是由多种因素导致的,例如: 需求理解不足:如果程序员没有完全理解项目的需求或者功能要求,可能会在编程过程中遗漏一些重要的细节,导致bug的产生。编程经验不足&…

Three.js真实相机模拟

有没有想过如何在 3D Web 应用程序中模拟物理相机? 在这篇博文中,我将向你展示如何使用 Three.js和 OpenCV 来完成此操作。 我们将从模拟针孔相机模型开始,然后添加真实的镜头畸变。 具体来说,我们将仔细研究 OpenCV 的两个失真模…

是谁?写的Java神作一出版就获Jolt图书大奖【抽奖赠书】

送书活动 1️⃣参与方式:点此参与抽书抽奖 2️⃣获奖方式:小程序随机 抽5位,每位小伙伴一本《Effective Java中文2024版》 3️⃣活动时间:截止到 2024-4-6 12:01:00 注:所有抽奖活动都是全国范围免费包邮到家&#xff…

openldap(一):简介和安装

目录 1 OpenLDAP简介1.1 LDAP介绍1、什么LDAP2、为什么要使用LDAP3、LDAP 的特点4、LDAP常用关键字5、LDAP的objectClass6、LADP使用场景 1.2 OpenLDAP介绍1、什么OpenLDAP2、OpenLDAP特点3、OpenLDAP的组件 2 OpenLDAP安装3 简单使用3.1 创建用户1、创建ou2、创建Group 3、创建…