百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 编程网 > 正文

一种接地气的编码规则:废弃驼峰式命名,告别手敲基础代码。

yuyutoo 2025-01-08 18:27 1 浏览 0 评论

一种好的编码规则,能提高工作效率。

在软件编程领域内,“驼峰”式命名规则是首选方式,最早来源于Perl语言编程的畅销书《program Perl》(oRelly出版)的封面图片正是一匹骆驼,故而得名。

但是这种命名规则是最不高效的方式,大小写问题就是因为这种命名规则导致的,有时还被带到沟里去了。所以并不被其他一部分程序员提倡,因为先发原因,所以被大部分公司和开发者使用,习惯的力量太强大了。

下面编码规则,在实践中证明,可以极大的提高效率:

变量名 废弃“驼峰”命名方式,**在能用小写的地方坚决不用大写**,解决大小写的烦扰。

严禁“缩没了”的方式的命名:比如:sgrj: 开工日期,应当命名为:startworkdate 或 kaigongriqi

一、最大可能地避免手敲代码,能极大地提高效率。

二、modle层的变量 完全以数据库表为参考物,提前检查表的字段注释不规范等。

三、在编辑器里对象名后 点号 弹窗里出来的get/set方法名全是小写的,一眼就知道是自己人的业务对象代码

废弃驼峰式的命名方式后,就很容易用某种自动化的脚本来生成基础代码了(见本文最后的用数据查询来实现的脚本)。如下面动图所示,能极大地提高工作效率。

Model类的制作

Response类的制作

一种是为了注释而注释, 不接地气;不方便代码阅读; 针对 这个弊端,本文建议一种新的编码注释风格。

Model类里的注释

左边为 不接地气的 代码注释 风格:每个字段类的变量,占据多行,各行间距都一样,没有 “组”的概念阅读代码时,需要鼠标滚屏,才能到达定位的字段上。

右边为 “接地气”的编码注释方式:每个字段类的变量,占据一行,注释用//方式写在最后,相关逻辑的变量字段写在一起,为一 “组”。几乎可以一屏展示所有的业务字段,无需鼠标滚屏;可以一目十行的扫视代码。

Response类里的注释

左边为 不接地气的 代码注释 风格每个字段类的变量,占据多行,各行间距都一样,没有 “组”的概念。阅读代码时,需要鼠标滚屏,才能到达定位的字段上。

右边为 “接地气”的编码注释方式每个字段类的变量占据一行,注释用直接复用ApiModelPeroperty里的描述,相关逻辑的变量字段写在一起,为一 “组”。几乎可以一屏展示所有的业务字段,无需鼠标滚屏。尤其在和其他部件联调时,非常方便,相关字段截图时可以在一屏里,发给对方参考。

Mapper.xml里的SQL

左边为 不接地气的 编写风格:一个条件里,占据几行,阅读时感觉太跳跃

右边为 “接地气”的编码方式:一个条件只占一行,阅读时可以一目十行的扫视,和阅读正常SQL没区别。


附件:(一种使用查询数据库的方式来生成基础代码),使用方式见上面的动图

SELECT CONCAT('@TableField("',COLUMN_NAME,'") private ',CASE WHEN data_type='varchar' THEN 'String 'WHEN data_type='datetime' THEN 'Date 'WHEN data_type='int' THEN 'Integer 'WHEN data_type='decimal' THEN 'BigDecimal 'WHEN data_type='char' THEN 'String 'WHEN data_type='longtext' THEN 'String '

WHEN data_type='text' THEN 'String 'WHEN data_type='char' THEN 'String ' END,REPLACE(LOWER(column_name),'_',''),';//',column_comment) AS '纯Model类'

/*

CONCAT('@ApiModelProperty(value = "',column_comment,'")', ' private ',CASE WHEN data_type='varchar' THEN 'String 'WHEN data_type='datetime' THEN 'Date 'WHEN data_type='int' THEN 'Integer 'WHEN data_type='decimal' THEN 'BigDecimal 'WHEN data_type='char' THEN 'String 'WHEN data_type='longtext' THEN 'String 'WHEN data_type='char' THEN 'String ' END,REPLACE(LOWER(column_name),'_',''),';//',column_comment) AS 'Response类'

concat(',#{m.',REPLACE(LOWER(column_name),'_',''),'}') as 'Mapper里的Insert里的Values',

concat(',',COLUMN_NAME,' ') as 'Mapper里的Insert里的Columns',

CONCAT(' ,t.', column_name, ' as ', REPLACE(LOWER(column_name),'_','') ) AS 'Mapper里的Select的列名',

CONCAT(' <if test="', REPLACE(LOWER(column_name),'_',''), ' != null and ', REPLACE(LOWER(column_name),'_','') ,' != '''' "> and ',COLUMN_NAME,' = #{',REPLACE(LOWER(column_name),'_',''),'} ' ,' </if>') AS 'Mapper里的Select语句的Where',

CONCAT(' <result column="', LOWER(column_name), '" property="', REPLACE(LOWER(column_name),'_','') ,'" />') AS 'Mapper里的resultMap映射',CONCAT(',t.',COLUMN_NAME,' AS ' ,REPLACE(LOWER(column_name),'_','')) AS 'Mapper里的Base_Columns',*/

FROM information_schema.COLUMNS WHERE table_name='这里输入数据表名'

AND table_schema='这里输入数据库名';


#头条创作挑战赛##软件编程##编程##编程语言##分享编程心得##分享编程技巧#

本文为今日头条独家原创稿件。欢迎大家留言、点赞、分享、转发!

————结束————

相关推荐

如何在EXCEL中进行IP地址排序

Excel中排序IP地址是非常不友好的,它完全是通过首位进行排序,无法实现我们的实际效果。作为IT人员对于IP地址的真正诉求是想要从小到大排列。那么如何进行排序呢?在Excel中,我们可以使用如下函数...

Excel揭秘!Left函数开启高效字符串左端截取模式

今日推荐:LEFT函数。目的:把一组身份证号码或者一组电话号码的敏感信息隐藏起来。...

五十一、UiPath字符串函数的介绍和使用(转)

一、字符串属性Length:是指字符串长度如:intlen=字符串变量.Length;Chars:是指字符串转换成字符数组,数组从0开始,通常配合Length属性使用如:System.Charc=...

打工人一定要会的Excel的15个技巧!

今天给各位打工人分享15个Excel常用的小技巧,废话不多说,直接开始!先给大家看一张快捷键速查表:1.Ctrl+C和Ctrl+V只是入门你可能已经很熟悉基本的复制粘贴,但如果你想让粘贴操作更高...

go语言中字符串常用的系统函数

最近由于工作比较忙,视频有段时间没有更新了,在这里跟大家说声抱歉了,我尽快抽些时间整理下视频今天就发一篇关于go语言的基础知识吧!我这我工作中用到的一些常用函数,汇总出来分享给大家,希望对...

最全的 ES 重点内容整理(上)

●我们从很多年前就知道ES6,也就是官方发布的ES2015●从2015年开始,官方觉得大家命名太乱了,所以决定以年份命名●但是大家还是习惯了叫做ES6,不过这不重要●重要的是...

2024 最火的5个顶级白板应用,燃爆了!

大家好,很高兴又见面了,我是"...

Excel Trim函数用法的6个实例,Excel 顽固空格的去除方法

在Excel中,Trim函数用于去文本的前后空格和字符之间的空格,但在去字符之间的空格时,它不会把所有空格都去除,而是留下一个空格;如果要把字符之间的所有空格都去掉,需要用Substitute函数...

TS类型体操,看懂你就能玩转TS了

本文以Typescript4.5及以上版本为基础,于2022年02月07日在掘金首发本文要实现一种类型工具...

一种接地气的编码规则:废弃驼峰式命名,告别手敲基础代码。

一种好的编码规则,能提高工作效率。在软件编程领域内,“驼峰”式命名规则是首选方式,最早来源于Perl语言编程的畅销书《programPerl》(oRelly出版)的封面图片正是一匹骆驼,故而得名。...

AI 应用开发最常用的解释型Python语言如何保护源代码

众所周知,解释型语言Python/JavaScript/Perl/Shell是在无需编译,可以直接运行,因此很难保护源代码,例如C、C++、JAVA属于编译型语言,运行之前需要先编译才能运行...

2020年树莓派的5种最佳编程语言

树莓派是最灵活的电脑之一。也许不是在硬件上,但是它的可操作性使它成为一个独立的类。树莓派跨越了电脑和编程之间的鸿沟,让每个人都能接触到电脑。因此,各个年龄段的编程爱好者都掀起了一股编程热潮。它允许他们...

5 种即将消亡的编程语言

每个编写代码的人都有自己喜欢的语言...

[240610] 5 种 Non-Posix Shell 在 x-cmd 上的支持 | Perl 发布 5.40.0

5种非PosixSHell-nushell,fish,xonsh,csh,pwsh利用三天假期,我开始动手增加了对各种Non-Posixshell的x-cmd支持。在这个过程中,...

Linux批量修改文件名及强大的$\「\」用法介绍

一:Rename命令rename命令用字符串替换的方式批量改变文件名。rename命令有两个版本,一个是c语言版本的,一个是perl语言版本的,判断方法:vim`whichrename`C语言版本...

取消回复欢迎 发表评论: