java - 使用局部变量或内联链方法更好吗?

标签 java coding-style

<分区>

如果我有一系列方法调用,每次调用的值都用于下一次调用,我是否应该将它们存储在局部变量中,如下所示:

DynamicForm filledForm = Form.form().bindFromRequest();
String shareIdStr = filledForm.get("data[shareId]");
UUID shareId = UUID.fromString(shareIdStr);
Share share = Share.find.byId(shareId);

或者作为单个调用链,像这样:

Share share = Share.find.byId(UUID.fromString(Form.form().bindFromRequest().get("data[shareId]")));

在这种情况下,再次使用的唯一值是share。也许答案介于两者之间,或者完全不同。你怎么看?

最佳答案

Not chaining Methods :

进阶

  1. 增强可读性。

  2. 提供重复使用的机会。

  3. 定位异常(如果有)变得更容易。

  4. 调试变得更容易,即在特定调用上设置断点很容易。

反抗

  1. 增加代码的长度(我不会说大小 :))。

  2. IDE 警告(如果有)。

Chaining Methods

进阶

  1. 减少创建多个临时文件的需要。变量。

  2. syntactic sugar

  3. 减少要写入的行数。

反抗

  1. 降低代码的可读性。

  2. 对于调用的特定方法,评论变得困难(如果有的话)。

  3. 调试整个调用链变得非常困难。

关于java - 使用局部变量或内联链方法更好吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24631848/

相关文章:

asp.net - StyleCop vs ReSharper 和一般编码风格问题

coding-style - 如果你打破了长代码行,你如何缩进下一行的内容?

java - 如何将 UI 中输入的值调用到 java 类?

java - 2 subdomains under the same tomcat JNDI error

java - Calendar.getInstance() 和 GregorianCalendar.getInstance() 之间的区别

java - 如何配置spring-hateoas注册的MappingJackson2HttpMessageConverter

c# - 是否可以将代码隐藏分解为多个部分文件?

java - 获取另一个Map中使用的Map的键和值(JAVA)

c - 在数组中存储临时值与多个变量

javascript - 我应该使用绑定(bind)还是关闭 'this' 的别名?