获得徽章 0
赞了这篇沸点
历史代码里,还是有蛮多箭头型代码的。
箭头型的代码,有一个可怕的地方:
【不敢维护它,因为容易改出问题,嵌套层次太多了,稍有不慎,就改错,它容易让你迷失。】
我自己平时应付这种代码的方案是:
【代码执行的结果是false的或者是异常的,那就先return。】
把这些代码都放到前面,这样就可以陆续去掉一些else片段了。
而另外一种做法是,把一堆的if else,抽取成方法,只要它的业务逻辑是处理某一件独立的事情的,我就抽取出去。这样的话,就又去掉了一些if else,可以提升一下代码的逻辑清晰度。
像各种高大尚的设计模式,我一般不用的,就是用上面的两个简单的方法处理箭头型代码,效果也是不错的。
箭头型的代码,有一个可怕的地方:
【不敢维护它,因为容易改出问题,嵌套层次太多了,稍有不慎,就改错,它容易让你迷失。】
我自己平时应付这种代码的方案是:
【代码执行的结果是false的或者是异常的,那就先return。】
把这些代码都放到前面,这样就可以陆续去掉一些else片段了。
而另外一种做法是,把一堆的if else,抽取成方法,只要它的业务逻辑是处理某一件独立的事情的,我就抽取出去。这样的话,就又去掉了一些if else,可以提升一下代码的逻辑清晰度。
像各种高大尚的设计模式,我一般不用的,就是用上面的两个简单的方法处理箭头型代码,效果也是不错的。
展开
2
6
赞了这篇沸点
![[庆祝]](http://lf-web-assets.juejin.cn/obj/juejin-web/xitu_juejin_web/img/jj_emoji_123.da47506.png)