变量命名用拼音还是英语?

本贴最后更新于 3153 天前,其中的信息可能已经水流花落

比如一个描述房子的结构体:

// HouseInfo 描述了房源.
type HouseInfo struct {
	Id               string   // 房源 Id
	LocalId          string   // 内部房源 Id
	LocalUserId      string   // 内部用户 Id
	UserId           string   // 经纪人 Id
	LouPan           string   // 楼盘名
	LouPanPinYin     string   // 楼盘名拼音
	LouPanId         string   // 楼盘 Id
	LouPanDiZhi      string   // 楼盘地址
	LouPanLatLng     string   // 楼盘经纬度
	QuXian           string   // 区县
	QuXianId         string   // 区县 Id
	XingZhengQu      string   // 行政区
	XingZhengQuId    string   // 行政区 Id
	ShangQuan        string   // 商圈
	ShangQuanId      string   // 商圈 Id
	ChanQuan         string   // 产权
	ChanZhengManEr   string   // 房产证是否满二年,"1":满,"0":不满
	WeiYiZhuFang     string   // 是否为房东唯一住房,"1":是,"0":不是
	WuYeYongTu       string   // 物业用途(住宅)
	ShouJia          string   // 售价,单位:万
	ZuJia            string   // 租价,单位:元
	Shi              string   // 室
	Ting             string   // 厅
	Wei              string   // 卫
	Chu              string   // 厨
	YangTai          string   // 阳台
	JianZhuJieGou    string   // 建筑结构(平层、错层、跃层、复式、开间)
	JianZhuLeiBie    string   // 建筑类别(塔楼、平层、砖混、钢混、板楼)
	JianZhuMianJi    string   // 建筑面积
	ShiYongMianJi    string   // 使用面积
	JianZhuNianDai   string   // 建筑年代
	LouCeng          string   // 楼层
	ZongLouCeng      string   // 总楼层
	ChaoXiang        string   // 朝向(东、南、西、北、东南、西南、东北、西北)
	ZhuangXiuChengDu string   // 装修程度(精装修、中装修、毛坯房、简装、豪华装修)
	PeiTaoSheShi     []string // 配套设施(水、电、煤气/天然气、冰箱、有限电视、宽带、电话、热水器、空调、洗衣机、电视机、微波炉、床、厨具、露台、家具、电梯、车位/车库、阁楼、花园/小院、储藏室/地下室)
	BiaoQian         []string // 标签(产权满五年、地铁房、学区房、业主唯一住房、红本在手、低首付)
	KanFangShiJian   string   // 看房时间(随时看房)
	BiaoTi           string   // 标题
	MiaoShu          string   // 描述
	HuXingTu         []string // 户型图链接
	ShiNeiTu         []string // 室内图链接
	XiaoQuTu         []string // 小区图链接
	DianHua          string   // 电话
	LianXiRen        string   // 联系人
	YiJuGuangGao     string   // 一句广告
	ZuFuFangShi      string   // 租金支付方式(月付、季度付、半年付、年付、面议)
	CheckCode        string   // 验证码
	CheckCodeKey     string   // 验证码 key
	CheckCodeId      string   // 验证码 id
}

业务字段命名是拼音,非业务字段(比如验证码什么的)用的是英语。

大家觉得基本原则是不是:

  1. 和其他开发小伙伴达成共识,说好一种命名法就坚持下去
  2. 其实用拼音命名还是蛮接地气的,清晰易读

还记得刚毕业的时候在的公司,拼音命名、英语命名混用(特别不能忍的是用拼音首字母缩写的),那时候觉得好 low,应该都用英语!

工作几年后,我也成了那样的人....

  • 变量命名
    1 引用 • 41 回帖
  • 拼音
    2 引用 • 50 回帖
  • 英语
    36 引用 • 154 回帖 • 1 关注
  • 程序员

    程序员是从事程序开发、程序维护的专业人员。

    568 引用 • 3532 回帖 • 1 关注

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...
  • 88250

    @Angonger 用拼音首字母非常装,我领教过 @flhuoshan 应该也领教过

  • 其他回帖
  • someone756

    学英文很有价值,尤其是年轻人,还是要把这关过了,英文又那么简单。当你能自如阅读英文的那一刻,你会开心到哭。

  • 714593351 1

    @88250 firefox 啊,图片大了也会拉伸,有代码也会,忍了好久了!
    1459932633047

  • mainlove

    首先 我想说

    一个类里面有那么变量 本来就是不对的

    应该是聚合起来的。。

    这个类太大了

  • 查看全部回帖

推荐标签 标签

  • Netty

    Netty 是一个基于 NIO 的客户端-服务器编程框架,使用 Netty 可以让你快速、简单地开发出一个可维护、高性能的网络应用,例如实现了某种协议的客户、服务端应用。

    49 引用 • 33 回帖 • 22 关注
  • 知乎

    知乎是网络问答社区,连接各行各业的用户。用户分享着彼此的知识、经验和见解,为中文互联网源源不断地提供多种多样的信息。

    10 引用 • 66 回帖
  • OkHttp

    OkHttp 是一款 HTTP & HTTP/2 客户端库,专为 Android 和 Java 应用打造。

    16 引用 • 6 回帖 • 63 关注
  • DNSPod

    DNSPod 建立于 2006 年 3 月份,是一款免费智能 DNS 产品。 DNSPod 可以为同时有电信、网通、教育网服务器的网站提供智能的解析,让电信用户访问电信的服务器,网通的用户访问网通的服务器,教育网的用户访问教育网的服务器,达到互联互通的效果。

    6 引用 • 26 回帖 • 510 关注
  • 钉钉

    钉钉,专为中国企业打造的免费沟通协同多端平台, 阿里巴巴出品。

    15 引用 • 67 回帖 • 339 关注
  • 安装

    你若安好,便是晴天。

    132 引用 • 1184 回帖 • 1 关注
  • 职场

    找到自己的位置,萌新烦恼少。

    127 引用 • 1705 回帖
  • Gitea

    Gitea 是一个开源社区驱动的轻量级代码托管解决方案,后端采用 Go 编写,采用 MIT 许可证。

    4 引用 • 16 回帖 • 5 关注
  • 996
    13 引用 • 200 回帖 • 6 关注
  • H2

    H2 是一个开源的嵌入式数据库引擎,采用 Java 语言编写,不受平台的限制,同时 H2 提供了一个十分方便的 web 控制台用于操作和管理数据库内容。H2 还提供兼容模式,可以兼容一些主流的数据库,因此采用 H2 作为开发期的数据库非常方便。

    11 引用 • 54 回帖 • 653 关注
  • Mac

    Mac 是苹果公司自 1984 年起以“Macintosh”开始开发的个人消费型计算机,如:iMac、Mac mini、Macbook Air、Macbook Pro、Macbook、Mac Pro 等计算机。

    166 引用 • 595 回帖 • 1 关注
  • Electron

    Electron 基于 Chromium 和 Node.js,让你可以使用 HTML、CSS 和 JavaScript 构建应用。它是一个由 GitHub 及众多贡献者组成的活跃社区共同维护的开源项目,兼容 Mac、Windows 和 Linux,它构建的应用可在这三个操作系统上面运行。

    15 引用 • 136 回帖
  • Windows

    Microsoft Windows 是美国微软公司研发的一套操作系统,它问世于 1985 年,起初仅仅是 Microsoft-DOS 模拟环境,后续的系统版本由于微软不断的更新升级,不但易用,也慢慢的成为家家户户人们最喜爱的操作系统。

    222 引用 • 473 回帖
  • CentOS

    CentOS(Community Enterprise Operating System)是 Linux 发行版之一,它是来自于 Red Hat Enterprise Linux 依照开放源代码规定释出的源代码所编译而成。由于出自同样的源代码,因此有些要求高度稳定的服务器以 CentOS 替代商业版的 Red Hat Enterprise Linux 使用。两者的不同在于 CentOS 并不包含封闭源代码软件。

    238 引用 • 224 回帖 • 1 关注
  • 服务器

    服务器,也称伺服器,是提供计算服务的设备。由于服务器需要响应服务请求,并进行处理,因此一般来说服务器应具备承担服务并且保障服务的能力。

    125 引用 • 588 回帖
  • 锤子科技

    锤子科技(Smartisan)成立于 2012 年 5 月,是一家制造移动互联网终端设备的公司,公司的使命是用完美主义的工匠精神,打造用户体验一流的数码消费类产品(智能手机为主),改善人们的生活质量。

    4 引用 • 31 回帖 • 2 关注
  • V2EX

    V2EX 是创意工作者们的社区。这里目前汇聚了超过 400,000 名主要来自互联网行业、游戏行业和媒体行业的创意工作者。V2EX 希望能够成为创意工作者们的生活和事业的一部分。

    17 引用 • 236 回帖 • 328 关注
  • flomo

    flomo 是新一代 「卡片笔记」 ,专注在碎片化时代,促进你的记录,帮你积累更多知识资产。

    5 引用 • 107 回帖
  • Latke

    Latke 是一款以 JSON 为主的 Java Web 框架。

    71 引用 • 535 回帖 • 787 关注
  • 黑曜石

    黑曜石是一款强大的知识库工具,支持本地 Markdown 文件编辑,支持双向链接和关系图。

    A second brain, for you, forever.

    15 引用 • 122 回帖
  • JWT

    JWT(JSON Web Token)是一种用于双方之间传递信息的简洁的、安全的表述性声明规范。JWT 作为一个开放的标准(RFC 7519),定义了一种简洁的,自包含的方法用于通信双方之间以 JSON 的形式安全的传递信息。

    20 引用 • 15 回帖 • 2 关注
  • 周末

    星期六到星期天晚,实行五天工作制后,指每周的最后两天。再过几年可能就是三天了。

    14 引用 • 297 回帖
  • 倾城之链
    23 引用 • 66 回帖 • 137 关注
  • 百度

    百度(Nasdaq:BIDU)是全球最大的中文搜索引擎、最大的中文网站。2000 年 1 月由李彦宏创立于北京中关村,致力于向人们提供“简单,可依赖”的信息获取方式。“百度”二字源于中国宋朝词人辛弃疾的《青玉案·元夕》词句“众里寻他千百度”,象征着百度对中文信息检索技术的执著追求。

    63 引用 • 785 回帖 • 177 关注
  • 安全

    安全永远都不是一个小问题。

    199 引用 • 816 回帖
  • FreeMarker

    FreeMarker 是一款好用且功能强大的 Java 模版引擎。

    23 引用 • 20 回帖 • 462 关注
  • ZooKeeper

    ZooKeeper 是一个分布式的,开放源码的分布式应用程序协调服务,是 Google 的 Chubby 一个开源的实现,是 Hadoop 和 HBase 的重要组件。它是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、域名服务、分布式同步、组服务等。

    59 引用 • 29 回帖 • 6 关注