博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Java中的命名的技巧
阅读量:6851 次
发布时间:2019-06-26

本文共 2829 字,大约阅读时间需要 9 分钟。

hot3.png

Why

代码可以自解释

What 规范:

项目, 包名小写

类名: 帕斯卡命名法, 每个字母首字母大写, 避免与常用的jdk, spring, mybatis等常用框架重名

方法名, 变量名: 驼峰, 首字母小写

常量,枚举: 全部大写,多个单词下划线‘_’分割

只能包含字母, 数字, 下划线 $, 且不能数字开头

严禁使用汉字拼音

How 类名称 单词 出现位置 含义 示例 & 说明 Dao suffix 数据库访问相关

Service, ServiceImpl suffix 业务处理 Controller suffix View相关 Job suffix 任务调度 RpcService suffix 第二三方调用 DummyServiceImpl suffix 模拟的 常见于单元测试无法达到的路径 Cache prefix, middle, suffix 缓存相关 Interceptor suffix 拦截 常见于Mvc, 在某个动作之前或之后拦截 Filter suffix 过滤 流程能否继续往下走 Producer suffix 生产者 常见于消息产生 Consumer suffix 消费者 常见于消息处理 Event suffix 事件 用途广泛 Adaptor suffix 适配器 LogAdaptor Handler suffix 处理 常见于消息处理具体的逻辑 Helper suffix 帮助 非关键业务逻辑 Provider suffix 提供某种能力 KeyProvider Resolver suffix 解决某种业务 TypeResolver Processor suffix 处理一个任务 ConsoleProcessor Pipeline suffix 分解任务中的一环 Exceutor suffix 处理器 常见与任务处理 Config suffix 配置类 没有复杂业务, 仅用于配置 Exception suffix 没啥好说的 Context suffix 传递的上下文 Util suffix 没啥好说的 Constants single 定义常量的interface Converter suffix 类型转换 VO

Param

Bundle

suffix 根据场景选用 Validator suffix 校验器 mvc 参数校验 Stream prefix, middle, suffix 流式处理 Support suffix 支撑 非关键业务 Selector suffix 选择器 根据条件选择一个或多个, 返回一组相关对象 Listener suffix 监听器 监听某种行为 Wrapper suffix 包装器 EntityWrapper Generator suffix 产生 IdGenerator Builder suffix 创建器 Strategy suffix 策略 Initializer suffix 初始化 CallBack suffix 回调 Template middle,suffix 模版 Proxy suffix 某某的代理 Plugin suffix 插件

方法名 尽量使用动词开头, 如果含义明确也可以使用名称

单词 出现位置 含义 示例 & 说明 单词 出现位置 含义 示例 & 说明 insert, save, create prefix 增 跟数据库相关,主要使用insert delete,remove prefix 删 跟数据库相关,主要使用delete update, increment, decrement prefix 改 跟新, 增加, 减少 select, query, get, list prefix 查 跟数据库相关,主要使用select Batch middle,suffix 批量 run, execute, submit single, prefix 运行, 提交 运行任务, 跟线程有关联 flush single, prefix 清空, 刷新 跟缓存, 存储有关, 没有返回, 或抛出异常

真伪判断

is, can, should, has, needs

prefix 判断状态

能否执行某种动作

执行某个命令好还是不好

是否包含有某些数据或属性

调用发是否需要执行某个命令

isMatch

canAccess

shouldAnimate

hasObservers

needsFill

按需执行

ifNeeded,

might,

try

orDefault

OrElse,

force

suffix

prefix

prefix

prefix

suffix

prefix

需要才执行, 也有可能啥也不做

同上

尝试做啥, 失败抛出异常

尝试做啥, 失败返回默认

尝试做啥, 失败返回参数中的指定值

强制执行, 失败抛出异常或返回值

drawIfNeeded

mightCreate

tryGetToken

getOrDefault

getOrElse

forceShutDown

异步相关

schedule

execute

cancel

prefix

prefix

prefix

定时job相关

执行同步或异步方法

取消

回调相关

on

before, pre, will

after, post, did

prefix

prefix

prefix

发生时执行

之前执行

之后执行

onMessage

preHandle

postHandle

集合操作

contains

add, append,put,offer

remove,poll, take

enqueue, dequeue

push,pop,peek

find, search

prefix, single

是否包含

添加, 具体差异可以参见blockingQueue

移除或获取, 具体差异可以参见blockingQueue

队列相关

栈相关

搜索查询

状态相关

ensure

validate

prefix

检查是否为期待的状态, 不是则抛出异常或错误码

检查是否为正确的状态, 不是则抛出异常或错误码

生命周期

initialize, init

abandon, destroy, dispose

signle

sigle

初始化

销毁

与数据相关

create, new

from

to

update

load

fetch

delete,remove

save, store, commit

apply

clear, reset

prefix

新建

从既有的新建

转换

更新

读取,加载

从远程读取加载

删除

保存

应用或保存

清除数据状态或恢复

转载于:https://my.oschina.net/lifei123/blog/2252010

你可能感兴趣的文章
分配到弱属性;对象将在赋值之后释放
查看>>
java作用域public ,private ,protected 及不写时的区别
查看>>
until循环语句
查看>>
Android桌面悬浮窗进阶,QQ手机管家小火箭效果实现
查看>>
提高用户体验方式:饥饿营销
查看>>
Java8中的LocalDateTime工具类
查看>>
Exchange 2013 PowerShell创建自定义对象
查看>>
RAID-10 阵列的创建(软)
查看>>
javaScript的调试(四)
查看>>
nginx不使用正则表达式匹配
查看>>
利用putty进行vnc + ssh tunneling登录
查看>>
hadoop1.x作业提交过程分析(源码分析第二篇)
查看>>
默认安装vsftpd后
查看>>
《Redis设计与实现》读书笔记
查看>>
waiting for changelog lock.
查看>>
小白学爬虫-批量部署Splash负载集群
查看>>
你离BAT之间,只差这一套Java面试题
查看>>
laravel package 推荐,数据备份
查看>>
Synchronized锁在Spring事务管理下,为啥还线程不安全?
查看>>
环境变量PATH cp命令 mv命令 文档查看cat/more/less/head/tail
查看>>