一直以来遵循着数据库中用下划线分割的命名方式,代码中用小驼峰式命名方式来。
一直以来都在做CURD工作,VO,DTO什么的写的不觉其烦。
但是轮到自己挣地盘糊口的项目时,突然陷入能写单引号为什么要写双引号的沉思,更不用说因为这不统一的命名方式,数据在各个应用接口、Elasticsearch与数据库的双向流动中无疑增加了诸多手工工作和长时间的川字眉凝视。
为什么不能统一用驼峰式命名法呢,常见的说法有:
1)数据库中表名和字段名采用小写和下划线分开的命名方式可读性好,不容易拼写错;
这一点还是要承认的,大多数情况下程序员的英语水平基本停在大学四级那里了,许多情况下来个下划线分隔的拼音简写命名字段,还目一然了。
2)数据库中大小写不敏感;
这个大小写敏感是可以设置的。
3)一直以来就是这么做的;
但是在我眼下的情况,这面临的转换工作就如同塞在牙缝里的那一撮牛筋,路边有树苗的话能手刀了做出牙签,马路上能捡那半截现成的牙签。
所以我就立即开始动手了。
说立即并不准确,因为这时已经有47个表了,代码就更加不用讲了,但是我觉得非解决不可,那一小撮牛筋一旦发现你并没有趁手的工具的时候,就变得油腻起来。
开始动手的时候,我又觉得代码中小驼峰命名法似乎有点不完美,反正是要改,何不干脆用大驼峰命名法呢?一个个ShowMeTheMoney的,多美。
于是我就开始动手了,一点懒没偷,早9晚6,外加第二天一个上午。(最开始是想改一部分试试,其他的有空再改,但是发现mybatis plus根本不给我这个机会)
问题肯定遗留不少,但是终究还是把那撮牛筋给扔掉了,可以休整一下,接下来就可以愉快的继续前进了。
喝了咖啡回来后,我就这么着发现,大驼峰命名法根本就没解决我要解决的问题,在Java的世界里,谁管你什么大驼峰啊,都是小驼峰,就差一个首字母的大小写,但是完全不通。
所以我又开始动手了,这次好一点,比上次改少了几个小时。
在此立下祖训:
忘却数据库的下划线命名方式,使用小驼峰命名法。