代码优雅实现讨论

2021-08-16 17:59:05 +08:00
 beryl

RT, Java 代码,一个方法中,逻辑特别多,于是把里面逻辑封装成了几个单独方法,但是也有七八个单独方法,看起来也有点难受:


fun() {

    fun1(); // 数据初始化
    
    // 这里有几行代码,处理特殊逻辑
    
    fun2();
    
    fun3(); // 调用第三方
    
    fun4();
    
    // 这里有打印日志
    
    fun5(); // 缓存处理
    
    fun6();
    
    // 这里有一些代码,做对象转换等
    
    fun7();
    
    // 打印日志等
    
    fun8(); // 缓存处理
    
    return xxx;
   
}

感觉还是在面向过程去写,有点难受看着,但是有没有优化思路,或者优秀代码参考。

4356 次点击
所在节点    程序员
25 条回复
dqzcwxb
2021-08-17 11:24:28 +08:00
思维导图
沟通
spring event
lambda stream optional
extract method
cutepig
2021-08-17 13:19:13 +08:00
最近在看函數式編程,
感覺如果你拆分的子函數 func1,。。。能達到函數式的那种重用性,那麽感覺会很不一样
DICK23
2021-08-18 14:00:36 +08:00
用 AOP 去搞?
securityCoding
2021-08-18 16:15:44 +08:00
既然存在上下文关系,考虑定义一个 filter 接口来隔离各个功能实现吧
funbox
2021-08-19 10:51:58 +08:00
把业务逻辑代码写那么复杂 别人砍你

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/796126

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX