《Effective Java》—— 谨慎设计方法签名

        这一章算是作者的一篇总结性文章,提出了五个小标题。

        第一是谨慎地选择方法名,这一点一直是我们讨论的主题。方法名在很大程度上决定了代码的可读性,而英语不是我们母语的情况下,很容易出现命名不恰当或者词穷的时候。在出现这些问题的时候,我会尽量写上一些必要的注释,不单是给我自己看的,也是告诉以后调用这个方法的开发相关内容。

        第二是不要过于追求提供便利的方法。作者建议不要提供太多的方法,如果方法太多整个类的维护升级和文档化会比较困难,因此只有当某个方法经常被用到才会被提供。这里我的想法是不用把一些代码抽出来,可能整个代码会显得比较长比较多,但其中内部的一些内部实现可以在后续开发中得到重构,而不是一开始就设计拆分开。

        第三是避免过长的参数列表。这个比较清晰明了,就是入参不要太多,尤其是出现参数类型相同的时候,调用API极容易搞错参数。作者也给出了三个解决的方法。首先可以考虑拆分方法,把一个方法拆分成多个阶段,每个阶段往下传对应所需的参数。不过这种方式在我看来最上面的方法参数列表仍然需要传入多个参数,所以不太好。下一个方法是设计一个内部类,把参数包装有一下。这个方法很实用。最后一个方法就是使用build。

        第四点对于参数类型优先使用接口而不是类,就像优先使用List,而不是arrayList。

        最后一点对于boolean参数优先使用两个参数的枚举。这一点我个人是推荐在后续代码中确认对应的参数,就不用管Boolea的。

你可能感兴趣的:(《Effective Java》—— 谨慎设计方法签名)