vlambda博客
学习文章列表

品Netty源码,学习良好的编程习惯(1)

品Netty源码,学习良好的编程习惯(1)

本篇文章大概600字,阅读时间大约4分钟


本篇文章是对前面Netty服务端初始化过程相关文章的一个重新总结,并修改了一些错误,还是希望用面试题的形式来全面总结Netty的设计思想和使用的细节,本文主要是重点review了Netty的一些较好的编码习惯,以期能在业务编码时,提高代码水平。


当然不全,后续会持续收集。

品Netty源码,学习良好的编程习惯(1)

1、学习规范的命名

比如bind>doBind,即可以将复杂的逻辑抽取封装为一个内部的核心方法叫doXxx;

品Netty源码,学习良好的编程习惯(1)


再进一步封装,可以继续后面加0:

品Netty源码,学习良好的编程习惯(1)


对一些初始化方法,可以命名initAndXxx;或者一个方法具备两种不同的作用,那么可以用and将其的命名连接:

品Netty源码,学习良好的编程习惯(1)


配置的相关类,可以命名为XxxConfig类;


可以借鉴XxxUnsafe这种命名,包括JDK也都是这么用的,即可以将比较“危险”的,太底层的API封装为XxxUnsafe类


总的指导思想:即量见名知意,不要怕长,比如ReflectiveChannelFactory类,其含义和要做的事情都是一目了然的;


2、善用重载方法,尽可能减轻上层调用者负担

比如意义相同的参数的不同类型,常见的就是端口号,有String和int两种,优秀的框架以及JDK等都会有对应的重载方法

品Netty源码,学习良好的编程习惯(1)


3、善用Closeable接口关闭资源

品Netty源码,学习良好的编程习惯(1)

比如Netty的一些资源池,就继承了该接口,可以在try(),或者自定义方法里实现资源自动释放的效果


4、合理的设计模式应用,比如职责链模式,pipeline模式,模板方法模式,工厂模式,单例模式,观察者模式等








5、在进入业务代码前,可以先做参数以及必选配置的校验,并封装为方法甚至专用的工具类,进行集中式校验:

品Netty源码,学习良好的编程习惯(1)



END


点亮在看,你最好看

~

阅读原文,获得更多精彩内容